// Copyright 2007-2010 Comdiv (F. Sadykov) - http://code.google.com/u/fagim.sadykov/
// Supported by Media Technology LTD 
//  
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//  
//      http://www.apache.org/licenses/LICENSE-2.0
//  
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// 
// MODIFICATIONS HAVE BEEN MADE TO THIS FILE
using System;
using System.Collections.Generic;
using System.Configuration;
using Comdiv.Design;
using Comdiv.Logging;

namespace Comdiv.Persistence{
    [NoCover("trivial")]
    public class DefaultConnectionsSource : IConnectionsSource{
        #region IConnectionsSource Members

        public IEnumerable<NamedConnection> GetConnections(){
            foreach (ConnectionStringSettings connectionString in ConfigurationManager.ConnectionStrings){
                logger.get("comdiv.persistence.connectionssource").debug(()=>"finded connection "+connectionString.Name);
                if (connectionString.Name.ToLower() == "localsqlserver"
                    || connectionString.Name.ToLower() == "localsqliteserver"){
                    continue;
                }
                yield return
                    new NamedConnection
                    {Name = connectionString.Name, ConnectionString = connectionString.ConnectionString};
            }
        }

        #endregion
    }
}